package net.zabuchy.issue.entity;

import java.io.Serializable;
import javax.persistence.*;

import org.hibernate.annotations.GenericGenerator;
import org.hibernate.annotations.Parameter;


/**
 * The persistent class for the issue_details database table.
 * 
 */
@Entity
@Table(name="issue_details")
public class IssueDetail implements Serializable {
	
	private static final long serialVersionUID = 1L;
	
	private int issueId;
	private int currentEffort;
	private String sourceCode;
	private String stepByStep;
	private String systemConfiguration;
	private String workaround;
	private Issue issue;

    public IssueDetail() {
    }


    @GenericGenerator(name = "generator", strategy = "foreign", parameters = @Parameter(name = "property", value = "issue"))
	@Id
	@GeneratedValue(generator = "generator")
	@Column(name = "ISSUE_ID", unique = true, nullable = false)
	public int getIssueId() {
		return this.issueId;
	}

	public void setIssueId(int issueId) {
		this.issueId = issueId;
	}


	@Column(name="CURRENT_EFFORT")
	public int getCurrentEffort() {
		return this.currentEffort;
	}

	public void setCurrentEffort(int currentEffort) {
		this.currentEffort = currentEffort;
	}


	@Column(name="SOURCE_CODE")
	public String getSourceCode() {
		return this.sourceCode;
	}

	public void setSourceCode(String sourceCode) {
		this.sourceCode = sourceCode;
	}


	@Column(name="STEP_BY_STEP")
	public String getStepByStep() {
		return this.stepByStep;
	}

	public void setStepByStep(String stepByStep) {
		this.stepByStep = stepByStep;
	}


	@Column(name="SYSTEM_CONFIGURATION")
	public String getSystemConfiguration() {
		return this.systemConfiguration;
	}

	public void setSystemConfiguration(String systemConfiguration) {
		this.systemConfiguration = systemConfiguration;
	}


	@Column(name="WORKAROUND")
	public String getWorkaround() {
		return this.workaround;
	}

	public void setWorkaround(String workaround) {
		this.workaround = workaround;
	}


	@OneToOne(fetch = FetchType.EAGER)
	@PrimaryKeyJoinColumn
	public Issue getIssue() {
		return this.issue;
	}

	public void setIssue(Issue issue) {
		this.issue = issue;
	}
	
}